//============================================================================
// Name        : strator.cpp
// Author      : norix
// Version     :
// Copyright   : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================

#define WIN_WIDTH 800
#define WIN_HEIGHT 600

#include "ants_glob.h"
#include "cAntsApp.h"

int main(int argc, char *argv[]) {
	cAntsApp AntsApp;
	AntsApp.Run();
	return 0;
}

//void testStateManager()
//{
//	printf("*** TEST StateManager ***");
//	cStateManager* manState = new cStateManager();
//
//	manState->Process(NULL);
//	manState->Push(func1, NULL);
//	manState->Push(func2, NULL);
//	manState->Process(NULL);
//	manState->Pop(NULL);
//	manState->Process(NULL);
//
//	delete manState;
//}
//
//int pid1, pid2, pid3;
//void testProcessManager()
//{
//	printf("\n*** TEST ProcessManager ***\n");
//
//	cProcessManager* manProcess = new cProcessManager();
//	manProcess->debug = true;
//	manProcess->Process(NULL);
//	pid1 = manProcess->Push(func1, NULL);
//	pid2 = manProcess->Push(func2, NULL);
//	pid3 = manProcess->Push(func3, NULL);
//	manProcess->Process(NULL); // frame pid3
//	manProcess->Pop(pid3);
//	manProcess->Process(NULL); // frame pid2
//	manProcess->Pop(pid2);
//	manProcess->Process(NULL); // frame pid1
//
//	printf("\n*** TEST 2 ProcessManager ***\n");
//	manProcess->PopAll(NULL);
//	manProcess->Process(NULL);
//	pid1 = manProcess->Push(func1, NULL);
//	pid2 = manProcess->Push(func2, NULL);
//	pid3 = manProcess->Push(func3, NULL);
//	manProcess->Process(NULL); // frame pid3
//	manProcess->Pop(pid3);
//	manProcess->Process(NULL); // frame pid2
//	manProcess->Pop(pid2);
//	manProcess->Process(NULL); // frame pid1
//
//	delete manProcess;
//}

//void func1(void* CallerPtr, Purpose purp)
//{
//	char name[] = "func1";
//
//	switch(purp)
//	{
//	case INIT_PURPOSE:
//		printf("%s INIT\n", name);
//		break;
//	case STOP_PURPOSE:
//		printf("%s STOP\n", name);
//		break;
//	case FRAME_PURPOSE:
//		printf("%s FRAME\n", name);
//		break;
//	case NO_PURPOSE:
//		printf("%s NO PURPOSE\n", name);
//		break;
//	}
//}
//
//void func2(void* CallerPtr, Purpose purp)
//{
//	char name[] = "func2";
//
//	switch(purp)
//	{
//	case INIT_PURPOSE:
//		printf("%s INIT\n", name);
//		break;
//	case STOP_PURPOSE:
//		printf("%s STOP\n", name);
//		break;
//	case FRAME_PURPOSE:
//		printf("%s FRAME\n", name);
//		break;
//	case NO_PURPOSE:
//		printf("%s NO PURPOSE\n", name);
//		break;
//	}
//}
//
//void func3(void* CallerPtr, Purpose purp)
//{
//	char name[] = "func3";
//
//	switch(purp)
//	{
//	case INIT_PURPOSE:
//		printf("%s INIT\n", name);
//		break;
//	case STOP_PURPOSE:
//		printf("%s STOP\n", name);
//		break;
//	case FRAME_PURPOSE:
//		printf("%s FRAME\n", name);
//		break;
//	case NO_PURPOSE:
//		printf("%s NO PURPOSE\n", name);
//		break;
//	}
//}
